#pragma once

#include "data_struct/base/TimeWorkBase/time/SteadyClock.hpp"

namespace behavior_controller
{

    class InExecution
    {
    public:
        typedef time::SteadyClock Clock;

        static constexpr int64_t interval = 5 * 60 * 1e9;

        static const InExecution &Ref();
        int64_t GetTimestamp() const;
        int GetTimeNumber() const;

    private:
        InExecution();
        ~InExecution() = default;
        InExecution(const InExecution &) = delete;
        InExecution &operator=(const InExecution &) = delete;

        static int64_t start_timestamp_;
    };

} // namespace behavior_controller
